home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 2 / Apprentice-Release2.iso / Source Code / Pascal / Utilities / Toxic Waste 1.8 / Toxic Send Code / DialogUses.p next >
Encoding:
Text File  |  1994-04-25  |  2.4 KB  |  39 lines  |  [TEXT/R*ch]

  1. {This is the DialogUses.p file.}
  2. unit dialogUses;
  3.  
  4. interface 
  5.  
  6. procedure StandardDialogDo (num: integer); 
  7. function ChoiceDialogDo (num: integer; maxLegal: integer): integer;
  8.  procedure HiliteItem (d: DialogPtr; num: integer; should: boolean); procedure
  9. Cluster (d: DialogPtr; n: integer; start: integer; lengthe: integer); function
  10. Hilited (d: DialogPtr; n: integer): boolean; procedure ToggleItem (d:
  11. DialogPtr; num: integer); function GetIRect (d: DialogPtr; i: integer): rect;
  12. procedure SetIRect (d: DialogPtr; i: integer; r: rect; rgn:
  13. RgnHandle);implementation procedure SetIRect (d: DialogPtr; i: integer; r:
  14. rect; rgn: RgnHandle);  var   a: integer;   b: rect;   item: Handle; begin 
  15. HideDItem(d, i);  GetDItem(d, i, a, item, b);  SetDItem(d, i, a, item, r); 
  16. ShowDItem(d, i);  UpdtDialog(d, rgn); end; function GetIRect (d: DialogPtr; i:
  17. integer): rect;  var   a: integer;   b: rect;   item: Handle; begin 
  18. GetDItem(d, i, a, item, b);  GetIRect := b; end; procedure Cluster (d:
  19. DialogPtr; n: integer; start: integer; lengthe: integer);  var   e: integer;
  20. begin  for e := start to start + lengthe do   HiliteItem(d, e, false); 
  21. HiliteItem(d, n, true); end; procedure ToggleItem (d: DialogPtr; num: integer);
  22.  var   a: integer;   b: rect;   item: Handle; begin  GetDItem(d, num, a, item,
  23. b);  if Hilited(d, num) then   SetCtlValue(ControlHandle(item), 0)  else  
  24. SetCtlValue(ControlHandle(item), 1); end; function Hilited (d: DialogPtr; n:
  25. integer): boolean;  var   a: integer;   b: rect;   item: Handle; begin 
  26. GetDItem(d, n, a, item, b);  Hilited := (GetCtlValue(ControlHandle(item)) = 1);
  27. end; procedure HiliteItem (d: DialogPtr; num: integer; should: boolean);  var  
  28. a: integer;   b: rect;   item: Handle; begin  GetDItem(d, num, a, item, b);  if
  29. should then   SetCtlValue(ControlHandle(item), 1)  else  
  30. SetCtlValue(ControlHandle(item), 0); end; procedure StandardDialogDo (num:
  31. integer);  var   tDlog: DialogPtr;   itemHit: integer; begin  tDlog :=
  32. GetNewDialog(num, nil, WindowPtr(-1));  ShowWindow(tDlog);  SetPort(tDlog); 
  33. ModalDialog(nil, itemHit);  DisposDialog(tDlog); end; function ChoiceDialogDo
  34. (num: integer; maxLegal: integer): integer;  var   tDlog: DialogPtr;   itemHit:
  35. integer; begin  tDlog := GetNewDialog(num, nil, WindowPtr(-1)); 
  36. ShowWindow(tDlog);  SetPort(tDlog);  repeat   ModalDialog(nil, itemHit);  until
  37. itemHit <= maxLegal;  ChoiceDialogDo := itemHit;  DisposDialog(tDlog); 
  38. end;end.
  39.